[アップデート]Amazon MSKでM7gインスタンスが利用可能になりました #AWSreinvent
みなさんこんにちは、杉金です。
Amazon MSKでM7gインスタンスが利用可能になりました。
M7gインスタンスについて
M7gインスタンスは、2023年2月に登場したインスタンスです。
AWS Graviton3というAWS Nitro System上に稼働するARMベースのプロセッサを搭載しています。M7gインスタンスは同サイズのM5インスタンスと比べて
- ストレージスループット:最大25%向上
- ネットワークスループット:最大88%向上
- エネルギー消費量:最大60%減
などの性能差があり、コストパフォーマンスに優れています。
対応リージョン
M7gインスタンスは、以下のリージョンで利用できます。
- アジアパシフィック (東京)
- アジアパシフィック (ムンバイ)
- アジアパシフィック (シンガポール)
- アジアパシフィック (シドニー)
- ヨーロッパ (ストックホルム)
- ヨーロッパ (スペイン)
- ヨーロッパ (アイルランド)
- 米国東部 (バージニア北部)
- 米国東部 (オハイオ)
- 米国西部 (北カリフォルニア)
- 米国西部 (オレゴン)
料金
料金は以下のページをご確認ください。
M5と比べてM7gの方が安いので積極的に使っていきたいですね。
やってみる
AWS公式のチュートリアルに従ってM7gインスタンスで作ってみます。
性能比較は行いませんのでご容赦ください。
新規クラスターの作成
新規にクラスターを作成します。
適当に名前をつけて、クラスタータイプを「プロビジョンド」にします。次のブローカー設定にて、ブローカータイプに今回追加されたM7gインスタンスを選びます。
あとはゾーン数、ネットワークの設定、セキュリティの設定、モニタリングの設定を行い、[クラスターの作成]を選択します。
選択後、クラスター作成待ちとなりますので、その間にIAMロールやクライアントとなるEC2をセットアップします。(コンソール上では15分ほどでクラスターが作成できると表示されましたが、1時間近く待ちました。気長に待ちましょう)
作成したらクライアントのEC2に接続して、トピックの作成を行い、動作確認をします。
kafka-console-producer.sh
を実行し、別ウィンドウを開いてkafka-console-consumer.sh
を実行します。producer側からメッセージを入力してEnterを入力すると、consumer側に入力した文字が表示されました。
動作確認も無事できました。
既存クラスターのインスタンスタイプ変更
既存のクラスターのブローカータイプ(インスタンスタイプ)を変更することも可能です。
クラスターの[プロパティ]タブを選択して、下にスクロールします。
[ブローカー]のところから、[ブローカーのタイプを編集]を選択します。
ブローカータイプからインスタンスタイプを変更します。
[変更を保存]を選択して、更新を待ちます。
以上が既存クラスターのインスタンスタイプ変更です。
ベストプラクティス
公式ドキュメントには、Amazon MSKのベストプラクティスが公開されています。インスタンスタイプの違いによる、推奨されるブローカーあたりのパーティション数やクラスタースループット最適化についてのガイドが記載されています。設計の際にご確認ください。
さいごに
新たに対応したM7gインスタンスでAmazon MSKクラスターを起動してみました。リストボックスからタイプを選択するだけでので、迷うことなく操作できます。Amazon MSKをあまり触ったことがないので、インターネットにあるさまざまなチュートリアルを参考にしたのですが、バージョンの違いなどもあり上手くいかず、最終的に公式ドキュメントのチュートリアルに落ち着きました。Re:Invent 2023ではGraviton4が発表されました。近い将来に対応してくれることを期待したいですね。